<?xml version="1.0"?>
<component name="org.nuxeo.ecm.platform.routing.pageproviders.override">

  <require>org.nuxeo.ecm.platform.routing.pageproviders</require>

  <extension point="providers" target="org.nuxeo.ecm.platform.query.api.PageProviderService">

    <coreQueryPageProvider name="DOC_ROUTING_SEARCH_ALL_ROUTE_MODELS">
      <pattern>
        SELECT * FROM DocumentRoute WHERE ecm:currentLifeCycleState = 'validated' AND ecm:isTrashed = 0
      </pattern>
      <sort ascending="true" column="dc:title"/>
      <pageSize>20</pageSize>
    </coreQueryPageProvider>

    <coreQueryPageProvider name="DOC_ROUTING_SEARCH_ROUTE_MODELS_WITH_TITLE">
      <pattern>
        SELECT * FROM DocumentRoute WHERE ecm:currentLifeCycleState = 'validated' AND ecm:isTrashed = 0
        AND dc:title LIKE ?
      </pattern>
      <sort ascending="true" column="dc:title"/>
      <pageSize>20</pageSize>
    </coreQueryPageProvider>

    <coreQueryPageProvider name="DOC_ROUTING_SEARCH_ALL_ROUTE_INSTANCES">
      <pattern>
        SELECT * FROM DocumentRoute WHERE ecm:currentLifeCycleState =
        'running' AND ecm:isTrashed = 0 AND dc:title LIKE ?
      </pattern>
      <sort ascending="true" column="dc:title"/>
      <pageSize>20</pageSize>
    </coreQueryPageProvider>

    <coreQueryPageProvider name="CURRENT_DOC_ROUTING_SEARCH_ATTACHED_DOC">
      <pattern>
        SELECT * FROM Document WHERE ecm:mixinType != 'Folderish' AND
        ecm:isTrashed = 0 AND dc:title ILIKE ?
      </pattern>
      <sort ascending="true" column="dc:title"/>
      <pageSize>20</pageSize>
    </coreQueryPageProvider>

    <coreQueryPageProvider name="SEARCH_ROUTE_BY_ATTACHED_DOC">
      <pattern>
        SELECT * FROM DocumentRoute WHERE (ecm:currentLifeCycleState = 'running'
        OR ecm:currentLifeCycleState = 'ready') AND ecm:isTrashed = 0 AND docri:participatingDocuments/*
        IN (?)
      </pattern>
      <sort ascending="true" column="dc:title"/>
      <pageSize>20</pageSize>
    </coreQueryPageProvider>

    <genericPageProvider class="org.nuxeo.ecm.platform.routing.core.provider.RoutingTaskPageProvider" name="nuxeo_tasks_listing">
      <pageSize>20</pageSize>
    </genericPageProvider>

  </extension>

</component>
